home *** CD-ROM | disk | FTP | other *** search
/ Aminet 4 / Aminet 4 - November 1994.iso / aminet / comm / cnet / lands051c.lha / BLmaint < prev   
Text File  |  1980-12-14  |  2KB  |  124 lines

  1. /* Battle Lands Maintenance */
  2.  
  3. options results
  4. path='pfiles:battlelands/users/'
  5. signal on syntax
  6. transmit 'cfRunning Battle Lands Maintenance!'
  7. transmit ''
  8. transmit ''
  9. call open(2,path||'battlers','r')
  10.  
  11. bll:
  12. battle=readln(2)
  13. name=readln(2);name2=left(name' ',20)
  14. sendstring 'Working on 'name2' '
  15. if eof(2)=1 then signal finished
  16. call loadstats
  17. sendstring 'PFIGHT '
  18. stat.65=0
  19. sendstring 'TURN '
  20. stat.67=0
  21. sendstring 'VISITS '
  22. stat.101=0
  23. sendstring 'GAMBLING '
  24. stat.108=0
  25. call savestats
  26. signal bll
  27.  
  28. loadstats:
  29. call open(1,path||'stats/'name)
  30. do i=1 to 110
  31.  stat.i=readln(1)
  32. end
  33. call close(1)
  34. return
  35.  
  36. finished:
  37. call close(2)
  38. signal bank
  39.  
  40. finished2:
  41. transmit 'c9COMPLETE!!'
  42. exit
  43.  
  44. savestats:
  45. call open(1,path'stats/'||name,'w')
  46. do i=1 to 110
  47.  call writeln(1,stat.i)
  48. end
  49. call close(1)
  50. return
  51.  
  52. bank:
  53. call open(2,path||'banklist','r')
  54. signal ban
  55.  
  56. ban:
  57. name=readln(2);name2=left(name'             ',20)
  58. sendstring 'Working on 'name' '
  59. if eof(2)=1 then signal finished3
  60. call loadaccounts
  61. sendstring 'ACCOUNTS '
  62. if account1<100000 then account1=VRnd(100000,500000)*50
  63. if account1>99999 then account1=account1
  64. call saveaccounts
  65. signal ban
  66.  
  67. loadaccounts:
  68. call open(1,path||'bank/'name)
  69. user=readln(1)
  70. account1=readln(1)
  71. call close(1)
  72. return
  73.  
  74. saveaccounts:
  75. call open(1,path'bank/'||name,'w')
  76. call writeln(1,user)
  77. call writeln(1,account1)
  78. call close(1)
  79. return
  80.  
  81. finished:
  82. call close(2)
  83. signal finished2
  84.  
  85. finished2:
  86. transmit 'c9COMPLETE!!'
  87. exit
  88.  
  89. VRnd: procedure   /*  Very Random v1.1  [c] 1990 Shane D. Killian  */
  90.    arg lo,hi      /*    Feel free to use this as long as these     */
  91.    n1 = time('E') /* comments remain intact.  Works like random(). */
  92.    n2 = time('S')
  93.    parse var n1 n11 '.' n12
  94.    n1 = n11 || n12
  95.    if lo > hi then do
  96.       x = lo
  97.       lo = hi
  98.       hi = x
  99.    end
  100.    if hi ~= lo then do
  101.       d = hi - lo + 1
  102.       x = length(d)
  103.       n1 = right(n1,x)
  104.       n2 = right(n2,x)
  105.       p = d
  106.       if p > 999 then p = 999
  107.       r = n1 + n2 + random(0,p)
  108.       r = r // d + lo
  109.    end
  110.    else r = hi
  111. return r
  112.  
  113. error:
  114. syntax:
  115. call close(1)
  116. call close(2)
  117. call close(3)
  118. transmit 'c7Error at line 'sigl' in Battle Lands'
  119. transmit sourceline(sigl)
  120. exit
  121.  
  122. finished3:
  123. call close(2)
  124. signal finished2